--[[-- Copyright (c) Huawei Technologies Co., Ltd. 2025. All rights reserved.
--
-- this file licensed under the Mulan PSL v2.
-- You can use this software according to the terms and conditions of the Mulan PSL v2.
-- You may obtain a copy of Mulan PSL v2 at: http://license.coscl.org.cn/MulanPSL2
--
-- THIS SOFTWARE IS PROVIDED ON AN "AS IS" BASIS, WITHOUT WARRANTIES OF ANY KIND, EITHER EXPRESS OR
-- IMPLIED, INCLUDING BUT NOT LIMITED TO NON-INFRINGEMENT, MERCHANTABILITY OR FIT FOR A PARTICULAR
-- PURPOSE.
-- See the Mulan PSL v2 for more details.
--
-- Author: auto generate
-- Create: 2025-8-20
-- Description: DO NOT EDIT; Code generated by "ipmi.lua.mako"
]] --
local bs = require 'mc.bitstring'
local enums = require 'ipmi.enums'
local ipmi = require 'ipmi'
local types = require 'ipmi.types'
local privilege = require 'mc.privilege'
local msg = require 'my_app.ipmi.ipmi_message'

local CT = enums.ChannelType

local MyAppIpmiCmds = {}

MyAppIpmiCmds.GetSecretNumber = {
    name = 'GetSecretNumber',
    prio = types.Priority.OEM,
    netfn = 0x30,
    cmd = 0x90,
    role = types.Role.Operator,
    privilege = privilege.BasicSetting,
    sensitive = false,
    restricted_channels = {},
    filters = [=[88,db,07,00,00]=],
    decode = [=[<<0x88:1/unit:8, 0x0007db:3/unit:8, 0x00:1/unit:8>]=] .. [=[>]=],
    encode = [=[<<CompletionCode:1/unit:8, SecretNumber:3/unit:8>>]=],
    req = msg.GetSecretNumberReq,
    rsp = msg.GetSecretNumberRsp,
    manufacturer = {-1, -1},
    sysLockedPolicy = 'Allowed'
}

MyAppIpmiCmds.SetSecretNumber = {
    name = 'SetSecretNumber',
    prio = types.Priority.OEM,
    netfn = 0x30,
    cmd = 0x90,
    role = types.Role.Operator,
    privilege = privilege.BasicSetting,
    sensitive = false,
    restricted_channels = {},
    filters = [=[88,db,07,00,01]=],
    decode = [=[<<0x88:1/unit:8, 0x0007db:3/unit:8, 0x01:1/unit:8,]=] .. [=[ Data:3/unit:8>>]=],
    encode = [=[<<CompletionCode:1/unit:8>>]=],
    req = msg.SetSecretNumberReq,
    rsp = msg.SetSecretNumberRsp,
    manufacturer = {-1, -1},
    sysLockedPolicy = 'Allowed'
}

return MyAppIpmiCmds
